package com.clkj.tramcarlibrary.tram;

import com.clkj.tramcarlibrary.base.BasePresenter;
import com.clkj.tramcarlibrary.base.BaseView;
import com.clkj.tramcarlibrary.entity.StopDetail;
import com.clkj.tramcarlibrary.entity.StopsDistance;
import com.clkj.tramcarlibrary.entity.Tramcar;

import java.util.List;

/**
 * Created by Administrator on 2017/2/14.
 */

public class TramcarContract {

    public interface View extends BaseView<Presenter> {
        //展示车站信息
        void showTramcarStops(List<Tramcar> tramcarList);


        void showGetTramcarStopsError(String tip);

        //展示距离你最近车站信息
        void showRecentStop(String station_name, String distance);

        void showRecentStopError(String tip);

        //展示所有站点距离定位坐标的距离
        void showAllDistance(List<StopsDistance> stopsDistances);

        void showAllDistanceError(String tip);
        //展示车站信息
        void showStopDetail(StopDetail stopDetail);

        void showStopDetailError(String tip);

        void showLoading();

        void dismissLoading();

        void showError(String tip);
    }

    public interface Presenter extends BasePresenter {

        /**
         * 获取有轨电车站点信息
         */
        void getTramcarStops();

        //获取距离定位坐标最近的一个站点信息和距离
        void getRecentStop(String lat, String lon);

        //获取所有站点距离定位坐标的距离
        void getAllDistance(String lat, String lon);

        /**
         * 获取有轨电车站点信息
         */
        void getStopDetail(String station_name);

    }

}
